/// 资源文件常量
class AssetConstants {
  AssetConstants._();
  
  /// 图片资源
  static final images = _ImageAssets();
  
  /// 图标资源
  static final icons = _IconAssets();
  
  /// 动画资源
  static final animations = _AnimationAssets();

  // 图像资源
  static const String imagesPath = 'assets/images/';
  static const String logoImage = '${imagesPath}logo.png';
  static const String splashImage = '${imagesPath}splash.png';
  static const String onboarding1 = '${imagesPath}onboarding1.png';
  static const String onboarding2 = '${imagesPath}onboarding2.png';
  static const String onboarding3 = '${imagesPath}onboarding3.png';
  static const String placeholderImage = '${imagesPath}placeholder.png';
  static const String emptyStateImage = '${imagesPath}empty_state.png';
  static const String errorStateImage = '${imagesPath}error_state.png';
  static const String noInternetImage = '${imagesPath}no_internet.png';
  
  // 图标资源
  static const String iconsPath = 'assets/icons/';
  static const String homeIcon = '${iconsPath}home.svg';
  static const String deviceIcon = '${iconsPath}device.svg';
  static const String analyticsIcon = '${iconsPath}analytics.svg';
  static const String profileIcon = '${iconsPath}profile.svg';
  static const String settingsIcon = '${iconsPath}settings.svg';
  static const String notificationIcon = '${iconsPath}notification.svg';
  static const String searchIcon = '${iconsPath}search.svg';
  static const String addIcon = '${iconsPath}add.svg';
  static const String editIcon = '${iconsPath}edit.svg';
  static const String deleteIcon = '${iconsPath}delete.svg';
  static const String backIcon = '${iconsPath}back.svg';
  static const String closeIcon = '${iconsPath}close.svg';
  
  // 动画资源
  static const String animationsPath = 'assets/animations/';
  static const String loadingAnimation = '${animationsPath}loading.json';
  static const String successAnimation = '${animationsPath}success.json';
  static const String errorAnimation = '${animationsPath}error.json';
  
  // 字体资源
  static const String primaryFont = 'PingFang SC';
}

/// 图片资源
class _ImageAssets {
  // Logo相关
  final String logo = 'assets/images/logo.png';
  final String logoHorizontal = 'assets/images/logo_horizontal.png';
  final String logoVertical = 'assets/images/logo_vertical.png';
  final String logoWhite = 'assets/images/logo_white.png';
  final String splashBg = 'assets/images/splash_bg.png';
  
  // 登录/注册相关
  final String loginBg = 'assets/images/login_bg.png';
  final String registerBg = 'assets/images/register_bg.png';
  final String forgotPasswordBg = 'assets/images/forgot_password_bg.png';
  
  // 背景图片
  final String homeBg = 'assets/images/home_bg.png';
  final String profileBg = 'assets/images/profile_bg.png';
  
  // 空状态/错误状态
  final String emptyData = 'assets/images/empty_data.png';
  final String error = 'assets/images/error.png';
  final String noConnection = 'assets/images/no_connection.png';
  final String noDevice = 'assets/images/no_device.png';
  
  // 占位图
  final String placeholderDevice = 'assets/images/placeholder_device.png';
  final String placeholderAvatar = 'assets/images/placeholder_avatar.png';
}

/// 图标资源
class _IconAssets {
  // 导航图标
  final String home = 'assets/icons/home.png';
  final String device = 'assets/icons/device.png';
  final String data = 'assets/icons/data.png';
  final String profile = 'assets/icons/profile.png';
  final String settings = 'assets/icons/settings.png';
  
  // 设备类型图标
  final String temperature = 'assets/icons/temperature.png';
  final String humidity = 'assets/icons/humidity.png';
  final String pressure = 'assets/icons/pressure.png';
  final String light = 'assets/icons/light.png';
  final String gas = 'assets/icons/gas.png';
  final String water = 'assets/icons/water.png';
  final String smoke = 'assets/icons/smoke.png';
  final String motion = 'assets/icons/motion.png';
  final String relay = 'assets/icons/relay.png';
  final String switch_ = 'assets/icons/switch.png';
  final String fan = 'assets/icons/fan.png';
  final String valve = 'assets/icons/valve.png';
  final String pump = 'assets/icons/pump.png';
  final String motor = 'assets/icons/motor.png';
  final String lighting = 'assets/icons/lighting.png';
  final String gateway = 'assets/icons/gateway.png';
  final String camera = 'assets/icons/camera.png';
  final String audio = 'assets/icons/audio.png';
  
  // 操作图标
  final String add = 'assets/icons/add.png';
  final String delete = 'assets/icons/delete.png';
  final String edit = 'assets/icons/edit.png';
  final String search = 'assets/icons/search.png';
  final String filter = 'assets/icons/filter.png';
  final String sort = 'assets/icons/sort.png';
  final String refresh = 'assets/icons/refresh.png';
  final String share = 'assets/icons/share.png';
  final String download = 'assets/icons/download.png';
  final String upload = 'assets/icons/upload.png';
  final String logout = 'assets/icons/logout.png';
  final String login = 'assets/icons/login.png';
  final String notification = 'assets/icons/notification.png';
  final String back = 'assets/icons/back.png';
  final String menu = 'assets/icons/menu.png';
  final String close = 'assets/icons/close.png';
  final String info = 'assets/icons/info.png';
  final String warning = 'assets/icons/warning.png';
  final String error = 'assets/icons/error.png';
  final String success = 'assets/icons/success.png';
}

/// 动画资源
class _AnimationAssets {
  final String loading = 'assets/animations/loading.json';
  final String success = 'assets/animations/success.json';
  final String error = 'assets/animations/error.json';
  final String empty = 'assets/animations/empty.json';
  final String noConnection = 'assets/animations/no_connection.json';
} 